using Headsight.BPMN2WF.Transformation;
using Headsight.BPMN2WF.Transformation.Transformers.Additions;
using Headsight.BPMN2WF.Transformation.Transformers.NoGoodName;

namespace Headsight.BPMN2WF.Testing.TestObjCtors
{
    /// <summary>
    /// <see cref="IBPMN2WFTransformationContext"/> <see cref="ITestObjCtor{T}"/>.
    /// </summary>
    public class BPMN2WFTransformationContextCtor : ITestObjCtor<IBPMN2WFTransformationContext>
    {
        public IBPMN2WFTransformationContext Create()
        {
            return new BPMN2WFTransformationContext
                       {
                           WorkflowDesigner = new WorkflowDesignerCtor().Create(), 
                           BPMNProcess = new BPMNProcessCtor().Create(), 
                           BPMN2WFTransformations = new BPMN2WFTransformations4TestingCtor().Create()
                       };
        }
    }
}